Le "Super Mario Bros. Relocaverburator" 
(version 1.0r7, Thursday, May 31 2001)
  Andrew "ouch" Lim


----------------L'histoire-----------------
 -v1.0r7 (Thursday, 5/31/2001)
Less hardcoded data
Reads bank numbers of pointer tables from pointers
It shows the bank of the level currently editing
Level $62 of SMBFSP has its offset read properly so you can edit it now (note that it is the same
level as $34 in the Original 1985 mode as in it uses the same level data)
Made it so it can show any level in any bank. (No more "Invalid Bank XX" errors)
It now shows the current object/sprites offset when using Load Level from Offset and also the
palette you selected.
Doesn't cancel the Load Level from Offset operation when you choose palette 0.
It now shows the current setup description on the Splash Screen when loading a ROM.
Fixed level entrance settings for SMBFSP
You can now edit level offsets/sprite offsets (see "Using SMBR")
Also changed the "Level Type" control name to "Type/Music" since it affects the music.
And changed level types 06-0F to "No Music" instead of "------" to avoid confusion.
The mapping GIF file now REALLY has been removed from the package.
Other minor fixes

 -v1.0r3 (Monday, 5/28/2001)
ROM loading time a bit faster
Level Entrance Bugs Fixed
Selecting Sprites now centered instead of focusing a page ahead
Disables controls when you don't load a ROM
Doesn't crash when you cancel a Load Offset operation
Replaced gif picture with read GFX in the ROM in the "Choose Block Object" window
(gif pic is no longer included with the zip)
When saving 2nd quest enemies, they don't save over the 1st quest enemies
Other minor fixes

 -v1.0 (Sunday, 5/27/2001)
First Public Release

 -v0.0 (??????, 4/??/2001)
Project Started


-------------Bienvenue!---------------
C'est le "Super Mario Bros. Relocaverburator".
"Le reloca...Comment?" 

Le "Super Mario Bros. Relocaverburator" est un 
SMBDX (GBC) editeur de levells. (le uneme)

C'editor est mon uneme serious project de programming pour
VB6.


----------------Features----------------
C'est what le editeur can do:

 -In editing the level itself
*View/Hide Objects (both block/full)
*View/Hide Sprites
*Show what objects look like (GFX) (both block/full)
*View/Hide Special Challenge Objects
*View/Hide Check Points for Challenge Red Coins
*Show some of what Challenge Objects look like (GFX)
*Show some of what VS Mode Objects look like (GFX)
*Edit Objects
*Edit Sprites

 -In editing the level's header
*Show Number of Pages read in the level
*Edit Number of Pages read in the level
*Show Level Type/Music
*Edit Level Type/Music
*Show Mario's Vertical Starting position
*Edit Mario's Vertical Starting position
*Show Ground Block Object
*Edit Ground Block Object

 -Misc.
*Reads ALL levels (for SMBFSP see the heading "Setup Files")
*Reads a level from an offset
*Saves a snapshot of the current level
*Page Division Lines
*Line that divides Y area that is onscreen/offscreen
*Edits level entrance settings
*Reads object GFX from the ROM
*Reads palettes from the ROM
*Edits levels palette setting


------------Future Features-------------
(no particular order)
Show what sprites look like (GFX)
Show all of what Challenge Objects look like
Show all of what VS Mode Objects look like
Edit Challenge Objects
Edit Red Coin Check Points
Edit colors of level palettes
Speed up the loading proccess
Allow user to move objects from one page to another
and some other stuff that I can't think of at the moment...


---------------Using SMBR---------------
Well, you first load your ROM
Enjoy the long wait of loading.
When the splash screen disappears wait some more...
Then it shows you 1-1.
Move to the level you want to edit using the
"Map Select" Scroll Bar.

To select an object, left-click its handles (the green four corners)
Or to select a sprite, right-click its handles (the yellow four corners)
Then...
Keys/Buttons:
    <P. Obj/Up:                Selects the previous object
    Obj N.>/Down:              Selects the next object
    First Obj/Ctrl+Up:         Selects the first object    
    Last Obj/Ctrl+Down:        Selects the last object
    Horizontalize/Numpad0:     Changes the object into a Horizontal Object
    Verticalize/Numpad0:       Changes the object into a Vertical Object
    NumPad1:                   Moves the object down-left
    D/NumPad2:                 Moves the object down
    NumPad3:                   Moves the object down-right
    L/NumPad4:                 Moves the object left
    Block Object/NumPad5:      Turns object into a Block Object
    Full Object/NumPad5:       Turns object into a Full Object
    R/NumPad6:                 Moves the object right
    NumPad7:                   Moves the object up-left
    U/NumPad8:                 Moves the object up
    NumPad9:                   Moves the object up-right
    L-10/Ctrl+Subtract:        Decreases the object length by $10 (decimal 16)
    L-1/Subtract:              Decreases the object length by 1
    L+1/Add:                   Increases the object length by 1
    L+10/Ctrl+Add:             Increases the object length by $10 (decimal 16)
    N-80/Ctrl+Divide:          Decreases the object number by $80 (decimal 128)
    N-10/Shift+Divide:         Decreases the object number by $10 (decimal 16)
    N-1/Divide:                Decreases the object number by 1
    N+1/Multiply:              Increases the object number by 1
    N+10/Shift+Multiply:       Increases the object number by $10 (decimal 16)
    N+80/Ctrl+Multiply:        Increases the object number by $80 (decimal 128)
    Choose . . ./Decimal       Opens "Choose Block Object" window
    Move To . . .              MoveTo mode on, and you can click where you want the object

Navigational:
    Start/Ctrl+Left            Moves to the start of the level
    Page Left/Shift+Left       Moves a page ($10 or decimal 16 blocks) left of the level
    Block Left/Left            Moves a block left of the level
    Block Right/Right          Moves a block right of the level
    Page Right/Shift+Right     Moves a page ($10 or decimal 16 blocks) right of the level
    End/Ctrl+Right             Moves to the end of the level

Toolbar/Status Bar:
    Click on Obj:?????         Changes the object offset of the current level
    Click on Spr:?????         Changes the sprite offset of the current level of the current quest

With changing object offsets, it can be just about anywhere in the ROM as long as the bank
can be loaded by the game, known valid banks are:
for Original 1985/For Super Players: 0D (34000-37FFF), 10 (40000-43FFF) and 32 (C8000-CBFFF) 
for VS Mode levels: 0C (30000-33FFF)

As with Sprite offsets, they all have to be within the same bank.  The editor, in future, will
have support to change the sprite bank.

Setup Files:

To edit SMBFSP, in cursetup.txt, change "smbdx.stp" to "smbfsp.stp". And change it back
when you want to edit Original 1985 Levels again.

These setup files support SMBDX English versions 1.0 and 1.1, Japanese version, which are
all the known versions.

The editor reads from pointers to the pointer tables to the levels so you can move your
pointer tables/stuff, as long as you change the pointers to it (and as long as the game
can still load it)

Setup files are yet to be documented.

--------Credits--------
I haven't had time to think this up yet but anyway:

Big thanx to ACMLM for his message board, time, help and many other things that I might forget to mention.
Big thanx to Emuz and Jonwil for info on SNES and other stuff that was useful in regards to developing this
level editor.

Credits to all in ACMLM's Message Board and anyone/anything else I might've forgotten (I promise a longer
list next time) :)

--------Contacting the Author-------
The author, ouch, whose real name is Andrew Lim,
can be contacted via e-mail at: andrewrl87@yahoo.com


Please send comments/bugs but NO silly comments like "it sucks".

 -About the Author-
Andrew Lim is 13 years old and lives in a western suburb of New South Wales which is a south-eastern state of 
Australia.
He is currently studying in High School (Year 8) and has been programming since he was 9.
He has been involved in emulation since he was 10
